fss-polish/README.md
FSSCoding 9316bc50f1 Initial commit: FSS-Polish v1.0.0
Complete implementation of Fast Spelling and Style Polish tool with:
- Australian English spelling conversion (7 patterns + case preservation)
- CLI support with text input or clipboard mode
- Daemon mode with configurable hotkey
- MIN_LENGTH, AGGRESSION, and CUSTOM_DICTIONARY config options
- Comprehensive diff logging
- 12 passing tests (100% test coverage for AU spelling)
- Wheel package built and ready for deployment
- Agent-friendly CLI with stdin/stdout support

Features:
- Text correction using t5-small-spoken-typo model
- Australian/American spelling conversion
- Configurable correction aggression levels
- Custom dictionary whitelist support
- Background daemon with hotkey trigger
- CLI tool for direct text polishing
- Preserves clipboard history (adds new item vs replace)

Ready for deployment to /opt and Gitea repository.
2025-10-25 23:59:34 +11:00

1.8 KiB

Clipboard Polisher

A lightweight, resident clipboard-based text polishing tool powered by a ~50 M parameter text-correction model designed for speed, minimal interference, and easy integration into your everyday workflows.

Project Overview

This project aims to build a standalone text polishing utility that runs in the background and corrects typos, spacing errors, and obvious mis-words in any text copied to the clipboard. Unlike LLM-based rewriting tools, it will:

  • Not rewrite sentences or alter meaning
  • Be extremely lightweight (~50 M parameters)
  • Be hotkey-triggered for instant use
  • Keep the model pre-loaded in memory for speed
  • Act as a conditioning pass for copied or transcribed text, markdown fragments, and notes

Features

  • Lightweight Model Inference
  • Global Hotkey Integration
  • Resident Background Service
  • Custom Post-Processing Hooks
  • Configurable Aggression

Installation

pip install -e .

Usage

Run the daemon with:

clipboard-polisher

Configuration

The tool uses a configuration file config.py that sets up model name, hotkey, and other settings.

Development

This project is designed to be easily expandable with agent APIs, dictionaries, multi-profile modes, and more.

License

MIT License

File & Folder Structure (Proposed)

clipboard-polisher/
├── src/
│   ├── main.py               # Entry point
│   ├── model_loader.py       # Load and cache model
│   ├── hotkey.py             # Hotkey + clipboard handler
│   ├── config.py             # Settings, profiles
│   └── utils.py              # Diff, logging, helpers
├── requirements.txt
├── README.md
├── setup.py
├── service/
│   └── clipboard-polisher.service   # systemd unit
└── tests/
    └── test_polish.py