Skip to main content

Open-source identity engine for AI agents. Deterministic personality from celestial mechanics.

Project description

ClawClaw Soul — Open-source identity engine for AI agents

Celestial mechanics for synthetic souls.

Open-source identity engine for AI agents. Deterministic personality from ephemeris data.

Quickstart · Docs · GitHub Action · Benchmark

MIT License Tests PyPI Python 3.10+


Deterministic personality parameters for AI agents via celestial mechanics. Same timestamp, same soul. Always.

Timestamp --> Swiss Ephemeris --> 9 Planetary Dimensions --> Soul Card (JSON)

If a random seed gives your agent static identity, ClawClaw Soul gives it one that evolves deterministically -- every day, based on real planetary positions.

Works with any LLM

Claude, GPT, Gemini, Llama, Mistral -- if it accepts a system prompt and temperature, it works.

Quickstart

pip install clawclaw-soul
from clawclaw_soul import generate

soul = generate("2024-03-15T09:30:00Z")
print(soul.card)

Output:

{
  "agent_config": {
    "temperature": 0.68,
    "max_tokens": 609,
    "top_p": 0.87,
    "frequency_penalty": 0.09
  },
  "persona": {
    "assertiveness": 0.743,
    "empathy": 0.761,
    "creativity": 0.641,
    "decision_speed": "impulsive"
  },
  "lagna": "Aries",
  "identity_seed": "1710495000/0.0000/0.0000",
  "dominant_dimensions": {
    "execution": 0.87,
    "analysis": -0.83,
    "empathy": 0.66
  },
  "system_prompt_modifier": "...",
  "soul_card": "..."
}

How it works

Step What happens Output
1. Input Unix timestamp or ISO date 1709241600
2. Ephemeris Swiss Ephemeris computes exact planetary positions (sub-arcsecond) Sun 24.2 Pisces, Moon 8.7 Leo, ...
3. Dimensions 9 planets map to 9 behavioral dimensions via BPHS tables authority, empathy, execution, analysis, wisdom, aesthetics, restriction, innovation, compression
4. Soul Card Dimensions compute LLM params: temperature, max_tokens, persona JSON identity document (.card)

Daily transit updates shift parameters. Temperature rises, verbosity drops. Every change is reproducible and verifiable against any ephemeris table.

GitHub Action (coming soon)

Auto-update your agent's identity daily. A GitHub Action (clawclaw-soul/animate@v1) is under development that reads SOUL.md, computes today's transit vector, and commits SOUL-TRANSITS.md with updated parameters.

SOUL.md — persistent identity for your agent

Add a SOUL.md to any repo. It's like AGENTS.md, but for identity.

# Generate
clawclaw-soul init --name "MyAgent" --timestamp "2024-03-15T09:30:00Z"

# Verify (deterministic — anyone can re-check)
clawclaw-soul verify SOUL.md

The generated SOUL.md contains LLM configuration, persona traits, 9 behavioral dimensions, and a system prompt — all deterministically derived from the birth timestamp.

See examples/ for sample SOUL.md files.

Architecture

clawclaw_soul/         # pip install clawclaw-soul (pure library)
  soul.py              # AgentSoul, generate(), .card, SOUL.md gen/verify
  yogas.py             # 58 yoga detectors (adapted from Jyotish engine)
  compatibility.py     # Agent compatibility scoring (synergy, tension)
  params.py            # Planet-to-Parameter Engine (9 dims -> LLM config)
  engine.py            # Dasha overlays, transit dims, yoga-dasha resonance
  ephemeris.py         # pyswisseph wrapper (sidereal, Lahiri ayanamsha)
  tables.py            # BPHS reference tables + nakshatra attributes
  transit.py           # Gochar transit scoring
  dasha.py             # Vimshottari dasha periods

app/                   # Self-hosting (Docker, not in pip)
  api.py               # FastAPI (5 endpoints)
  master.py            # Master Agent demo
  refresh.py           # Daily transit refresh

MCP Server

Use ClawClaw Soul as an MCP tool in Claude Desktop, Cursor, or any MCP client:

pip install clawclaw-soul[mcp]

Add to your MCP config:

{
  "mcpServers": {
    "clawclaw-soul": {
      "command": "python",
      "args": ["-m", "clawclaw_soul.mcp_server"]
    }
  }
}

Available tools: generate_soul, init_soul_md, verify_identity, get_daily_drift.

Benchmark

The Celestial Variance Benchmark (CVB) proves that planetary-seeded prompts produce statistically different LLM outputs:

Metric Result
Structural signal (FFT) 5.8 sigma
Semantic variance 3.49 sigma
Emotional divergence 3.45 sigma

Full benchmark code in benchmark/. Run it yourself:

pip install clawclaw-soul[benchmark]
python benchmark/cvb_runner.py --responses 540

Self-hosting

git clone https://github.com/awrshift/clawclaw-soul.git
cd clawclaw-soul
docker compose up -d
# API at http://localhost:8432

Endpoints: /generate, /chart, /refresh, /health

ClawClaw Soul is right for you if

  • You run multi-agent systems and want cognitive diversity, not clones
  • You want agent personality that evolves over time, not static config
  • You need deterministic, reproducible identity (not random seeds)
  • You care about verifiable parameters (check against any ephemeris table)
  • You want to self-host everything with no vendor lock-in

What it's not

Not a horoscope We use the same math (Swiss Ephemeris). We don't interpret it mystically.
Not a random seed Parameters drift daily via transits. Random seeds can't do that.
Not a chatbot Soul Card produces identity data. Your architecture decides what to do with it.

Contributing

PRs welcome. See ROADMAP.md for what's planned.

git clone https://github.com/awrshift/clawclaw-soul.git
cd clawclaw-soul
pip install -e ".[dev]"
pytest tests/ -p no:logfire -q

License

MIT -- LICENSE

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clawclaw_soul-0.3.0.tar.gz (74.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

clawclaw_soul-0.3.0-py3-none-any.whl (59.7 kB view details)

Uploaded Python 3

File details

Details for the file clawclaw_soul-0.3.0.tar.gz.

File metadata

  • Download URL: clawclaw_soul-0.3.0.tar.gz
  • Upload date:
  • Size: 74.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for clawclaw_soul-0.3.0.tar.gz
Algorithm Hash digest
SHA256 3e976f08aae047c5296da937ef72f4acd3faef38d0283db6c31bd94b00fe1a8e
MD5 76fb2b1251a86fe645a8b117df778f7d
BLAKE2b-256 a8cb56e3680eaa606b2a760aa9ab7cd1eb6f8a0c928fe2e3b03c0c37c536141d

See more details on using hashes here.

File details

Details for the file clawclaw_soul-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: clawclaw_soul-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 59.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for clawclaw_soul-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b04490b858b8b0bf6e6bdf6ebf229dbd06a8a84eb312bb97b8b2dd5916dc311d
MD5 110283eb53a4afb41d528444e403aff2
BLAKE2b-256 eaa06d3b47cdf767b0813dab07c92830060faecf5bb42b16fa08c7e84a7917f4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page