Declare a chat agent once — its instructions, its knowledge and the orbitals (input/output guardrails) around it — and build it into a native agent of the framework you already use: PydanticAI, LangChain/LangGraph, Microsoft Agent Framework, or Google ADK.
Status: alpha. The API can still change between minor versions (
0.x).
Install
pip install 'chatomon[pydantic-ai]' # or 'chatomon[langchain]'
pip install 'chatomon[maf]' # MAF core; add your provider's MAF client package
pip install 'chatomon[maf-foundry]' # FoundryChatClient and FoundryAgent
pip install 'chatomon[adk]' # Google ADK 2.10 to 2.12
pip install 'chatomon[principled]' # Principled Intelligence ScopeGuard / ClaimExtractor orbitals
pip install 'chatomon[studio,pydantic-ai]' # the local studio: chatomon studio module:atom
pip install 'chatomon[spectral,pydantic-ai]' # the studio with its Spectral add-on: evaluation at scale
Both MAF connectors support input and output orbitals on non-streaming runs. The MAF guide covers local Foundry sessions and connector configuration.
Quickstart
from pydantic_ai.models.test import TestModel
from chatomon import Atom, Knowledge, OrbitalContext, Verdict, orbital
from chatomon.connectors.pydantic_ai import PydanticAIConnector
@orbital
def no_refunds(ctx: OrbitalContext) -> Verdict:
if "refund" in ctx.message.lower():
return Verdict.block(guidance="Explain that refunds are handled by email.")
return Verdict.allow()
atom = Atom(
name="speedypack",
instructions="You are the customer assistant of SpeedyPack, a parcel courier.",
knowledge=Knowledge("Opening hours: Monday to Friday, 9-18."),
connector=PydanticAIConnector(TestModel(custom_output_text="Refunds are handled by email.")),
input_orbitals=[no_refunds],
)
agent = atom.build() # a native pydantic_ai.Agent
assert agent.run_sync("I want a refund").output == "Refunds are handled by email."
Replace TestModel(...) with a real model, for example "openai:gpt-5".
To try an atom in the browser, run chatomon studio speedypack.app:atom and open the printed link: the studio shows every orbital deciding, turn by turn, and lets you tune the orbitals and copy the result back as code.
Documentation
The documentation is at chatomon.andromedalabs.io. It covers concepts, orbitals, connectors, the studio, observability and deployment, plus the API reference generated from the code.
Contributing
Bug reports, ideas and pull requests are welcome — start with
CONTRIBUTING.md. Security issues: see
SECURITY.md.
Metadata
Release files for chatomon 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| chatomon-0.1.0.tar.gz | 1.6 MB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| chatomon-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.9 MB
Release files / chatomon-0.1.0.tar.gz
| Download URL | chatomon-0.1.0.tar.gz |
|---|---|
| Size | 1.6 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
67ef8eccfbe3645c2f0fa4420bc0243a4ee5a58dcc756872169b261a9fac3508
|
|
BLAKE2b-256 checksum How to use checksums |
55ef0a53206fb9921fb2466b57895aafb564bea9009e50e05ff1f505c1c0a246
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.
Transparency logRelease files / chatomon-0.1.0-py3-none-any.whl
| Download URL | chatomon-0.1.0-py3-none-any.whl |
|---|---|
| Size | 365.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c5fd8c252a854a10f544ae5af19d5593465a89eb6cbece91076ee6784b734c3a
|
|
BLAKE2b-256 checksum How to use checksums |
d0647eee1c2eade082a9ad14c8847bd1c4ca805b34765e1457ab02e27501afea
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.
Transparency logSecurity for chatomon 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for chatomon-0.1.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.