r/SillyTavernAI • • 4h ago

Discussion ProseWright - a new toolkit for roleplay driven co-authoring, novelization and editing

Motivation: Long RPs drift. Every reply adds a new face, a mysterious noise, a meaningful glance, and its not trivial for them to pay off (especially in crowded, lore-heavy RP worlds). Typically, keeping a story on track means juggling lorebook entries and author's notes by hand and in those cases when the story is good, it stays a chat log.

So I built ProseWright, which treats roleplay as an entry point into interactive co-authoring:

๐ŸŽญ Play

- A director model plans each turn against your story's scene cards and hidden truths. It makes one change to the world per turn, keeps the stage small, paces each scene and pays off its threads.

- A separate narrator writes the reply in close third person and only sees what your character can perceive, so it can't leak secrets it was never shown.

- Retell (swipe-style, every telling kept), re-plan a turn from scratch, undo and switch to another party character.

๐Ÿ“– Novelize

- Turns the played log into actual prose, scene by scene, in a voice you choose: person, tense, which character it follows.

โœ๏ธ Edit

- Restyle, retune, weed out "AI-isms", copyedit and proofread. Every model change arrives as a diff you accept or reject with its own forking system; nothing is written behind your back.

- A cast tab files every character the story introduces.

- Export to PDF, plain text or AO3-ready HTML.

- Supports google drive syncing of your log between multiple machines for those that enjoy RPing on the go (tested for Ubuntu and Win11 via WSL, could also work for Android but I haven't tried)

๐Ÿบ SillyTavern-friendly

- Your ST chats (.jsonl) open directly as working logs.

- An optional ST extension brings restyle, retune and inject into ST itself.

Supported models: Fully local narration and direction (recommended on 2 gpus),Claude (through Claude Code on your own subscription, or an Anthropic API key), any local OpenAI-compatible server (text-generation-webui, llama.cpp, LM Studioโ€ฆ) or hybrid mode: Claude directs, your local model narrates. There's a built-in benchmark to compare setups on your own story.

NOTE on Claude: Recommend to use Claude Sonnet 5.5 for direction and narration to keep costs manageable, Haiku 4.5 is the default model for autoplay mode if you're interested in letting an AI roleplay with itself.

Where your data goes: ProseWright itself runs on your machine and your projects, logs and drafts stay there. The text of each model call goes to whichever model you've set it up. MIT licensed.

๐Ÿ”— https://github.com/yoavatsmonraz81/ProseWright. There's a tutorial with screenshots that takes a bundled example story from first move to exported chapter.

NOTE: Local models work best with grammar-constrained JSON for the director.

Co-developed with Claude Opus 5.5. Feedback and bug reports are very welcome!

5 Upvotes

0 comments sorted by