Metadata-Version: 2.4
Name: seed-protocol-core
Version: 0.1.0
Summary: Open schema validator + CLI for the SEED Protocol AI personality format. Premium engines (Astro v2, Kavach, Pantheon, Dharana) available via seed.abhibots.com SaaS.
Author-email: Abhiraj Singh <abhi@seed.abhibots.com>
License: AGPL-3.0-or-later
Project-URL: Homepage, https://seed.abhibots.com
Project-URL: Documentation, https://seed.abhibots.com/docs
Project-URL: Source, https://github.com/AbhiWisdom/seed-protocol-core
Project-URL: PremiumSaaS, https://seed.abhibots.com/pricing
Project-URL: Issues, https://github.com/AbhiWisdom/seed-protocol-core/issues
Keywords: ai,personality,seed,schema,llm,prompt,validator
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: NOTICE
Requires-Dist: jsonschema>=4.17
Requires-Dist: click>=8.1
Requires-Dist: pyyaml>=6.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0; extra == "dev"
Requires-Dist: ruff>=0.1.0; extra == "dev"
Requires-Dist: build>=1.0; extra == "dev"
Requires-Dist: twine>=4.0; extra == "dev"
Dynamic: license-file

# seed-protocol-core

**Open schema validator + CLI for the SEED Protocol AI personality format.**

[![PyPI](https://img.shields.io/pypi/v/seed-protocol-core.svg)](https://pypi.org/project/seed-protocol-core/)
[![License: AGPL v3](https://img.shields.io/badge/License-AGPL_v3-blue.svg)](LICENSE)
[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/)

A SEED file is a single portable JSON/YAML document that defines an AI's
complete identity, voice, bond, capabilities, operations, and (optionally)
60+ philosophical "soul" sections grounded in Indian darshana.

This package is the **public, AGPL-3.0 layer** — the schema, the
validator, the diff engine, the prompt exporter, and a basic CLI.
Premium engines (the actual "AI brain") live in the proprietary SaaS at
[seed.abhibots.com](https://seed.abhibots.com).

---

## Install

```bash
pip install seed-protocol-core
```

## Quickstart

```bash
# Create a basic SEED interactively
seed create

# Validate against the v3 JSON Schema
seed validate examples/minimal.seed.json

# Compare two SEED files
seed diff examples/sage.seed.json examples/warrior.seed.json

# Export to a system prompt for any LLM provider
seed export examples/sage.seed.json --format openai
seed export examples/sage.seed.json --format anthropic
seed export examples/sage.seed.json --format google

# Inspect a SEED file
seed info examples/minimal.seed.json
```

## Python API

```python
from seed_protocol_core import SeedFile, SeedDiff, export_prompt

seed = SeedFile.load("examples/minimal.seed.json")

# Validate
errors = seed.validate()           # list[str], empty = valid
print(seed.is_valid())             # True / False

# Render to a system prompt
system_text = export_prompt(seed, format="anthropic")

# Diff two seeds
a = SeedFile.load("a.seed.json")
b = SeedFile.load("b.seed.json")
d = SeedDiff(a.data, b.data)
print(d.format_text())
```

---

## What's in core

| Public | Description |
|--------|-------------|
| `SeedFile` | Load, save, validate, merge `.seed.json` / `.seed.yaml` |
| `SeedDiff` | Structural comparison between two SEED files |
| `validate_seed` | JSON Schema (Draft 7) validation against v1 / v2 / v3 |
| `export_prompt` | Render to OpenAI / Anthropic / Google / universal prompt |
| `seed create/validate/info/diff/export` | CLI commands |

## What's NOT in core (premium — [seed.abhibots.com](https://seed.abhibots.com/pricing))

| Premium engine | What it does |
|----------------|--------------|
| **Astro Engine v2** | 14 modules, 260+ yogas, live transit sync — birth-chart-driven personality |
| **Kavach** | 4-layer cryptographic armor (priv-key signing, lineage, viraha defense) |
| **Dharana** | Token-budget-aware selective loading — only ship the relevant sections to the LLM |
| **Pantheon** | Specialist routing across multiple Pantheon archetypes |
| **Darpan** | Mirror-self debate engine — your soul argues with itself before answering |
| **9 Soul Engines** | Atman, Purusha, Vedana, Qualia, Trishna, Viraha, Mrityubodh, Svatantrya, Swapna |
| **Smriti + GraphMemory** | Tiered memory (vivid / fading / compressed / dissolved) + a knowledge graph |
| **Evolution + ImprovementEngine** | Trait drift, temporal evolution, baby-mind learning |
| **Imagination + Synthesis + Curiosity** | Creative / exploratory engines |
| **MindCron** | Nightly consolidation: habits, reflection, forgetting, graph decay |

The premium CLI commands (`seed apply`, `seed evolve`, `seed darpan`,
`seed load`) print a friendly message pointing to the SaaS:

```bash
$ seed apply my-soul.seed.json
x  `seed apply` is a premium feature.

   Requires the Dharana selective-loading engine.
   Available at https://seed.abhibots.com/pricing — starter (INR 49/mo).
   Or use the MCP wrapper: npx -y seed-protocol-mcp@latest
```

---

## Why AGPL-3.0?

We picked AGPL because it protects the open spec from being silently
proprietary-forked into a closed SaaS clone. If you run a modified copy
as a hosted service, AGPL requires you to release your modifications.
That keeps the schema open and the playing field fair. If you want to
build a proprietary product on top of the engines, license commercially
through [seed.abhibots.com](https://seed.abhibots.com).

The MCP wrapper ([`seed-protocol-mcp`](https://www.npmjs.com/package/seed-protocol-mcp))
remains MIT — that one's just a thin client.

---

## Compatibility — moving from `seed-protocol`

If you used the previous `seed-protocol` v2.x PyPI package, the public
API surface is preserved — `SeedFile`, `validate_seed`, `SeedDiff`,
`export_prompt`. Engine imports (Dharana, Kavach, Atman, etc.) now live
inside the SaaS only. Use the SaaS API or the MCP wrapper to access
those.

```python
# Before:
from seed_protocol import SeedFile, DharanaEngine   # DharanaEngine is gone

# After:
from seed_protocol_core import SeedFile             # works
# Dharana — call the SaaS or MCP wrapper instead.
```

---

## Trademarks

"SEED Protocol", "Avni", "Shilpi", "Vidya", and the Pantheon name
combinations are trademarks of Abhiraj Singh. AGPL covers the source
code only — see [NOTICE](NOTICE) for details. Forks must rename.

## Contact

- Site:    https://seed.abhibots.com
- Pricing: https://seed.abhibots.com/pricing
- Docs:    https://seed.abhibots.com/docs
- MCP:     `npx -y seed-protocol-mcp@latest`
- Email:   abhi@seed.abhibots.com
