mirror of
https://github.com/severian-dev/sucker.severian.dev.git
synced 2026-10-18 01:20:29 +00:00
94d43dbb9d
Every failure produced the same reply: read the directions, and check your context size. For a card Janitor truncated that was fair. For a request shape the user never chose, or for a bug in sucker, it blamed them for something they could not have done anything about — and sent them back to directions they had already followed. Failures that can be explained now explain themselves: no card in the request, no greeting in the chat, a card that arrived truncated (which keeps the context-size advice, since that is where it belongs), and a request with nothing in it. Anything else is a bug nobody anticipated, so the reply says as much, says it is not the user's fault, and asks them to DM @lyseverian on Discord — an unexplained failure nobody reports never gets fixed. Internals are never echoed back. SuckerError is recognised by name as well as by identity, because Next can bundle a module into more than one chunk and a mismatched class would quietly send every explained error down the unknown-bug path. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01NX2SsmUqQftWTZAY4BDuFa
37 lines
2.1 KiB
Markdown
37 lines
2.1 KiB
Markdown
# Sucker
|
|
|
|
### Environment Variables
|
|
|
|
Add these to your `.env.local` file (optional):
|
|
|
|
```bash
|
|
# Disable Discord community banner (defaults to showing banner)
|
|
NEXT_PUBLIC_DISABLE_DISCORD_BANNER=true
|
|
```
|
|
|
|
### Usage
|
|
|
|
Pull this repostory and build with `npm run build`. You can start the server with `node ./.next/standalone/server.js`
|
|
|
|
You can also build and run Sucker as a Docker container with `docker compose build` and `docker compose up`.
|
|
|
|
### Changelog
|
|
|
|
- 2.5: Real error messages instead of one blanket "dingus" reply; unexplained failures now ask you to DM @lyseverian. Unread dot on the Changelog button. Fixed extraction for users whose Janitor sends a request without the blank turn before the first message — sucker read the parts by position rather than by role, so for them it read the wrong ones and errored. Now resolved by role, with tests for both shapes.
|
|
- 2.4: CSS editor for Janitor profiles. New banner links to the live-preview editor at tools.from-avalon.com/janitor-profile-maker.
|
|
- 2.3: ECHO. Put ECHO: anywhere in a message and sucker repeats whatever comes after it in the reply — for triggering char-side script and lorebook keywords.
|
|
- 2.2: Added support for directly inputting webp file names or character image links when creating PNG character cards
|
|
- 2.1: updated deps, note about image fetching, list of mirrors
|
|
- 2.0: from Tui: Multimessage support! Tracks changes to character descriptions and scenarios across multiple extractions. Shows version badges, message counts, and provides detailed change history viewer.
|
|
- also 2.0: V2 charcard format and alternate greetings.
|
|
- 1.9: Not again. They changed stuff again. What is this?
|
|
- 1.8: Handling for new prompt structure, new instructions
|
|
- 1.7: Handling for nested XML character tags
|
|
- 1.6: First message formatting, copy button for first message and other fields
|
|
- 1.5: {{user}} substitution for user persona name
|
|
- 1.4: Mooth just keeps finding bugs, damn.
|
|
- 1.3: Mooth found a bug, fixed it.
|
|
- 1.2: Fix for Janitor having changed their prompt system
|
|
- 1.1: Fix for R1 handling change, blank user persona bug
|
|
- 1.0: Yup.
|