Skip to main content

omnichar-sdk

Read Omnichar Studio .char character files from Python.

A .char holds a character's reference images, its locked description, and often a trained LoRA. This package opens one and hands back those parts. It reads; it never writes.

from omnichar_sdk import Character

char = Character.open("Ada.char")

char.get_description()                       # the locked description
char.get_references(arch="flux2-klein")      # the compiled reference set, in prompt order
char.get_lora()                              # the trained adapter, with a portability verdict
char.get_prompt(style="ordinal")             # text that binds the character to its positions
char.save_reference_sheet("ada.png")         # all the references as one numbered PNG

Reference sheets

reference_sheet() lays the references out in a grid and numbers each cell. The numbers are the point: a position is what a prompt refers to, so a sheet without them cannot be checked against the prompt it belongs to. Pass the same first_position to both and they agree.

char.reference_sheet(arch="flux2-klein", first_position=1)  # a PIL image
char.reference_sheet_png()                                  # PNG bytes
char.save_reference_sheet("out/ada.png")                    # writes it, adds .png if missing

It takes the same arch, role, limit and origin filters as get_references, plus columns, cell, fit, labels and background. It needs the images extra.

Install

pip install omnichar-sdk              # reads everything; needs only the standard library
pip install 'omnichar-sdk[images]'    # adds Pillow, for decoding and resizing references

The base install has no dependencies on purpose. It is meant to drop into ComfyUI, A1111, SwarmUI or a batch job without competing with whatever that host has pinned, so it never converts images to tensors. That belongs to the host.

From a shell

omnichar-sdk inspect Ada.char --json
omnichar-sdk extract Ada.char -o out/
omnichar-sdk prompt Ada.char --style token

inspect --json prints the whole character record, so a tool in any language can read a .char through this command without a Python binding.

The format

docs/char-format.md in this repository describes the container and the manifest well enough to write a reader in another language.

Licence

Apache-2.0. The rest of the repository, including the node pack, is GPL-3.0-or-later.

Metadata

Release files for omnichar-sdk 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for omnichar-sdk 0.0.1
File Size Uploaded
omnichar_sdk-0.0.1.tar.gz 24.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for omnichar-sdk 0.0.1
File Interpreter ABI Platform
omnichar_sdk-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 54.1 kB

Release files / omnichar_sdk-0.0.1.tar.gz

Download URL omnichar_sdk-0.0.1.tar.gz
Size 24.3 kB
Tags Source
SHA-256 checksum
How to use checksums
b3453e354d12e50f395ceb9a66dc8c51a15a375d1557c3c5f11ca169c0af2466
BLAKE2b-256 checksum
How to use checksums
cbab633795431e9751dd006250ef67c20910a5e853497655fbd5355962a94587
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 2, 2026.

Transparency log

Release files / omnichar_sdk-0.0.1-py3-none-any.whl

Download URL omnichar_sdk-0.0.1-py3-none-any.whl
Size 29.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a83dbfea41ae5fb1d4d0579b0a7ed00988b3af30360cda57ab4d528a63b3b603
BLAKE2b-256 checksum
How to use checksums
1fe72abf24c3e4bb6a3a3077680baea9857de11b8a52e7dc29af6277644a7144
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 2, 2026.

Transparency log

Release history Release notifications | RSS feed

0.1.1

2 release files

0.1.0

2 release files

This release

0.0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page