Metadata-Version: 2.4
Name: SplatLLM
Version: 0.1.0
Summary: SplatLLM makes text generated by large language models (LLMs) appear more authentically human via heuristic-based formatting.
Project-URL: Homepage, https://github.com/theobjectivedad/splat-llm
Project-URL: Issues, https://github.com/theobjectivedad/splat-llm/issues
Author-email: The Objective Dad <theobjectivedad@gmail.com>
License-Expression: Apache-2.0
License-File: LICENSE
Keywords: filter,invisible,mcp,text,watermark
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Text Processing :: Filters
Classifier: Topic :: Utilities
Requires-Python: >=3.10.12
Requires-Dist: beautifulsoup4>=4.13.4
Requires-Dist: click
Requires-Dist: rich>=14.0.0
Description-Content-Type: text/markdown

# SplatLLM

SplatLLM makes text generated by large language models (LLMs) appear more authentically human via heuristic-based formatting. Broadly, this involves:

* Removal of [invisible characters](https://invisible-characters.com/) that can be used for watermarking and/or hiding information in plain text.
* Remapping of unusual characters typically produced my LLMs but not typically used by human writers. For example, the Unicode dash punctuations commonly generated by LLMs are remapped to standard ASCII hyphens.
* Removal of certain markdown formatting characteristically used by LLMs.

SplatLLM can also be used to reveal invisible characters and other unusual formatting via the ``splat --show-invisibles`` / ``splat -s`` command:

![SplatLLM text analysis sample](https://raw.githubusercontent.com/theobjectivedad/splat-llm/refs/heads/master/images/splat_llm_dump.webp)

*Coming soon will be an MCP version that will expose SplatLLM as a callable tool for agent-driven post-formatting.*

## Quickstart

Install/run via ``uvx``:

```shell
uvx splatllm
```

Or, install via pip:

```shell
pip install SplatLLM
```

Then run:

```shell
splatllm
```

## Development Setup

First, clone this repository:

```shell
git clone https://github.com/theobjectivedad/splat-llm.git
```

Change directory to the cloned repository:

```shell
cd splat-llm
```

Next, setup your local virtual environment. Note that [uv](https://github.com/astral-sh/uv) will be installed if it isn't found in the environment:

```shell
make venv
```
