Metadata-Version: 2.5
Name: linkedparticles-core
Version: 1.132.1
Summary: Client layer of the Particles reference implementation — store-free schema, extraction, and interchange
Project-URL: Homepage, https://github.com/LinkedParticles/particles-core-py
Project-URL: Repository, https://github.com/LinkedParticles/particles-core-py
Project-URL: Issues, https://github.com/LinkedParticles/particles-core-py/issues
Author: The Particles authors
License: Apache-2.0
License-File: LICENSE
License-File: NOTICE
Keywords: agents,beliefs,citations,epistemic,knowledge-graph,knowledge-management,llm,provenance,psum,rag,uncertainty
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
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 :: Python Modules
Classifier: Typing :: Typed
Requires-Python: >=3.11
Requires-Dist: anthropic>=0.28
Requires-Dist: html2text>=2024.2
Requires-Dist: httpx>=0.27
Requires-Dist: jsonschema>=4.22
Requires-Dist: lxml-stubs>=0.5.1
Requires-Dist: numpy>=1.26
Requires-Dist: opentelemetry-api>=1.27
Requires-Dist: pydantic>=2.7
Requires-Dist: pyld<4,>=2.0
Requires-Dist: pypdf>=6.15.0
Requires-Dist: pyshacl<0.32,>=0.26
Requires-Dist: pyyaml>=6.0
Requires-Dist: rdflib<8,>=7.0
Requires-Dist: scipy>=1.13
Requires-Dist: sentence-transformers>=2.7
Requires-Dist: sqlalchemy>=2.0
Requires-Dist: torch
Provides-Extra: vision
Requires-Dist: pypdfium2>=4.30; extra == 'vision'
Description-Content-Type: text/markdown

# linkedparticles-core

> **Particles is shared memory for humans and AI agents.** Each particle is one
> claim, plus what you need to judge it: who said it, where, when, and how
> confident they were. Facts, opinions, and memories are all claims, recorded
> the same way as particles. Particles are not edited or deleted. Particles are
> superseded, retracted, or disputed in the open. How much to trust it is a
> perspective applied at query time, never baked into the record.

The store-free **Client layer** of the Particles reference implementation — the
substrate for defining, validating, serializing, and producing candidate
particles without a graph or a store. This package holds the pieces that never
touch persistent state:

- the schema models and their invariants (immutable confidence, the status
  machine, the Core/Extension split);
- the extraction layer that turns source bytes into candidate particles with
  unresolved subject names;
- confidence math, the completion-provider port, embeddings, conformance
  validation, and the pure interchange codec.

Holding or reasoning over accumulated state — reconciliation, subject
resolution, querying, linting — lives in the **engine** package
(`linkedparticles`), which depends on this one.

## Install

```bash
pip install linkedparticles-core
```

## The three repositories

| Repo | What it is |
|---|---|
| [`particles-standard`](https://github.com/LinkedParticles/particles-standard) | The standard: whitepaper, technical specification, normative schema + SHACL artifacts, conformance fixtures |
| [`particles-core-py`](https://github.com/LinkedParticles/particles-core-py) | **This repo** — the Python Client layer (`linkedparticles-core`) |
| [`particles-engine-py`](https://github.com/LinkedParticles/particles-engine-py) | The Python Engine layer + surfaces (`linkedparticles`) |

## License

Apache-2.0. See [LICENSE](LICENSE) and [NOTICE](NOTICE).

## Contributing

See [CONTRIBUTING.md](CONTRIBUTING.md) and [ARCHITECTURE.md](ARCHITECTURE.md).
Contributions are accepted under a Developer Certificate of Origin sign-off —
there is no CLA.
