Metadata-Version: 2.4
Name: moss-tts-nano-cli
Version: 0.1.0
Summary: One-command zero-shot voice cloning with MOSS-TTS-Nano via mlx-audio.
Project-URL: Homepage, https://github.com/vra/moss-tts-nano-cli
Project-URL: Repository, https://github.com/vra/moss-tts-nano-cli
Project-URL: Issues, https://github.com/vra/moss-tts-nano-cli/issues
Author-email: 蔚山 <weishan.wyf@alibaba-inc.com>
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Multimedia :: Sound/Audio :: Speech
Requires-Python: >=3.12
Requires-Dist: click>=8.0.0
Requires-Dist: mlx-audio>=0.0.1
Requires-Dist: numpy>=1.26.0
Requires-Dist: soundfile>=0.12.0
Provides-Extra: dev
Requires-Dist: pytest>=8.0.0; extra == 'dev'
Requires-Dist: ruff>=0.6.0; extra == 'dev'
Description-Content-Type: text/markdown

# moss-tts-nano-cli

One-command zero-shot voice cloning with the [MOSS-TTS-Nano-100M](https://huggingface.co/mlx-community/MOSS-TTS-Nano-100M) model, powered by [mlx-audio](https://github.com/Blaizzy/mlx-audio).

## Features

- **No manual setup**: `uvx moss-tts-nano-cli` installs the environment automatically.
- **Lazy model download**: the model is fetched from Hugging Face on first use.
- **Voice cloning**: pass a reference WAV and text to synthesize speech in that voice.
- **Apple Silicon optimized**: runs on MLX.

## Requirements

- Python 3.12+
- macOS with Apple Silicon (MLX backend)
- [uv](https://docs.astral.sh/uv/) (recommended)
- FFmpeg (used indirectly by audio tooling)

## Install

```bash
uv tool install moss-tts-nano-cli
```

Or run without installing:

```bash
uvx --from moss-tts-nano-cli moss-tts-nano --help
```

## Usage

### Clone a voice

```bash
moss-tts-nano clone \
  --ref ./my_voice.wav \
  --text "Hello, this is my cloned voice speaking." \
  --out output.wav
```

The first run downloads `mlx-community/MOSS-TTS-Nano-100M` and the audio tokenizer into the Hugging Face cache (`~/.cache/huggingface`).

### Eagerly download the model

```bash
moss-tts-nano download
```

### Show info

```bash
moss-tts-nano info
```

## Development

```bash
git clone https://github.com/vra/moss-tts-nano-cli.git
cd moss-tts-nano-cli
uv sync --extra dev
uv run pytest
```

## License

MIT
